#ifndef __FILELOADER_H__
#define __FILELOADER_H__

#include "include/CTypes.h"
#include "include/ILoadedFile.h"
#include "LoadedImage.h"

typedef struct ImageHeader
{
	u32 FormatVerification1;
	u32 FormatVerification2;
	u16 Width;
	u16 Height;
	u32 FormatVerification3;
	u32 FormatVerification4;
} ImageHeader;

class CFileLoader
{
public:
	CFileLoader();
	virtual ~CFileLoader();

	CLoadedImage *ImageLoad(u32 *Buffer,u32 Size);

	void InternalReadGeneral(void *Dest,void *Source,u32 Size,u32 *Position);
	void InternalReadu8(u8 *Dest,u8 *Source,u32 Size,u32 *Position);
	void InternalReadu32(u32 *Dest,u32 *Source,u32 Size,u32 *Position);
};

#endif
